Distributed processing systems that are made up of intelligent workstations adapted to access central databases at source locations are being adapted to a growing number of applications. In many of these applications, a given workstation may require access to a single data object from some source database more than once. This requires much duplication of effort by the systems managing the database and the network.
To reduce this duplication of effort, it is desirable to maintain replicas of frequently accessed data objects at the workstation using such data objects to enhance responsiveness at the workstation, to improve availability of the communication channels by preventing repeated requests for the same object and to reduce costs. However the use of storage systems at the workstation locations which maintain replicas of frequently accessed data aggravates the problem of data obsolescence. If data in the central database is changed, then replicas of that data stored at workstation locations become obsolete. Therefore a system to manage obsolete data at workstations is necessary.
Well known systems, called consistency control protocols (CCP), for maintaining replicas of data objects viewed at workstations up to date respond to a change in a source data object by preventing access by any workstation to replicas of the changed data object until replacement of existing replicas made obsolete by the change is complete. This approach has proven burdensome in systems that communicate across relatively slow or faulty channels, such as telephone lines, because it takes a relatively long time to accomplish replacement of all obsolete replicas of the data in the distributed system. Also, it imposes certain availability requirements on channels or requires denial of access to data when sufficient channels are not operable. See, Wesley W. Chen and Joseph Hellerstein, "The Exclusive-Writer Approach to Updating Replicated Files in Distributed Processing Systems," IEEE Transactions on Computers, Vol. C-34, No. 6, June 1985, pages 489-500.
Also, because data objects at source locations change and replicas of those data objects are stored at locations remote from the source, a number of different derivations of the same data object may be created. For instance, a data object may consist of a frame of text to be displayed on a video terminal. A second data object consisting of a second frame of text may include information that matches with information in the first frame. Thus, if the source location updates one frame rendering all replicas of that one frame obsolete at replica locations throughout the system, and if prior to updating the second frame to assure view consistency, a replica location requests a replica of both frames, then the replica location will receive inconsistent versions of the two data objects. Prior art systems for maintaining replicas of data objects viewed at workstations up to data have been unable to assure consistency of views of data objects in this environment without preventing access by all workstations to updated data objects until all obsolete replicas of data objects stored at workstations and sets of related data objects have been rendered invalid. Again, this approach is very burdensome in systems which communicate slowly and/or in which there are large numbers of replicas of some individual data items.
U.S. Pat. No. 4,432,057, invented by Daniell et al, issued Feb. 14, 1984 entitled "Method for the Dynamic Replication of Data under Distributed System Control to Control Utilization of Resources in a Multiprocessing, Distributed Database System" teaches a method by which requests for access to specific versions of data are permitted and confirmation of updated data is selectively deferred by use of a control procedure implemented at each node and utilizing a status and control file at each node which describes that node's view of the status for shared data items at other nodes. By distributing the responsibility for controlling access to updated data to each node in the system, the Daniell et al patent suffers from much duplication of work by all the nodes in the system. The Daniell et al patent provides a good discussion of the prior art and is incorporated by reference for the purposes of that discussion.